﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Entidades;
using Logica;
using Logica.Comandos.Sucursal;
using NUnit.Framework;

namespace Pruebas.PruebaLogica
{
    [TestFixture]
    class PruebaSucursal
    {
        [TestCase]
        public void AgregarSucursal()
        {
            Comando comando = FComandos.ComandoSucursal().Agregar();
            Lugar estado = FabricaEntidades.ObtenerLugar();
            Lugar ciudad = FabricaEntidades.ObtenerLugar();
            Lugar urbanizacion = FabricaEntidades.ObtenerLugar();
            Lugar calle = FabricaEntidades.ObtenerLugar();
            Lugar casa = FabricaEntidades.ObtenerLugar();
            Lugar piso = FabricaEntidades.ObtenerLugar();

            estado.IdLugar = -1;
            estado.Nombre = "estado";
            estado.Tipo = "estado";
            ciudad.Nombre = "ciudad";
            ciudad.Tipo = "ciudad";
            estado.Descendiente = ciudad;
            urbanizacion.Nombre = "urbanizacion";
            urbanizacion.Tipo = "urbanizacion";
            ciudad.Descendiente = urbanizacion;
            calle.Nombre = "calle";
            calle.Tipo = "calle";
            urbanizacion.Descendiente = calle;
            casa.Nombre = "edificio";
            casa.Tipo = "edificio";
            calle.Descendiente = casa;
            piso.Nombre = "piso";
            piso.Tipo = "piso";
            piso.Descendiente = null;

            Sucursal miSucursal = FabricaEntidades.ObtenerSucursal();

            miSucursal.Telefono1 = 01212312.ToString();
            miSucursal.Telefono2 = 2012312.ToString();
            miSucursal.Tipo = "principal";
            miSucursal.Direccion = estado;
            miSucursal.IdAseguradora = 24;

            int id = ((ComandoCrearSucursal) comando).Ejecutar(miSucursal);
            Assert.AreNotEqual(-1,id);
        }
    }
}
